package com.zeropoint.demo.service;

import com.github.pagehelper.PageInfo;
import com.zeropoint.demo.exception.AuthorityException;
import com.zeropoint.demo.exception.SelectException;
import com.zeropoint.demo.exception.UserLoginException;
import com.zeropoint.demo.pojo.MenuPO;
import com.zeropoint.demo.pojo.ResultEntity;
import com.zeropoint.demo.pojo.UserPO;
import com.zeropoint.demo.pojo.vo.UserVO;

import java.util.HashMap;
import java.util.List;


public interface UserService {


    HashMap<String, Object> userLogin(UserPO userPO) throws UserLoginException;

    List<MenuPO> getMenus();

    PageInfo<UserVO> getUsers(Integer currentPage, Integer pageSize);

    List<String> getRegions(String regionName) throws SelectException;

    UserVO saveUser(UserVO userVO);

    String modifyUserInformation(HashMap<String, String> map) throws UserLoginException;

    void modifyUserState(Integer otherId, String way) throws AuthorityException;

    UserVO getUserInformation(Integer userId) throws AuthorityException;

    UserVO selectUserInfo();
}
